;(function(global, factory) {
    if (typeof define === 'function' && define.amd) {
        // AMD
        define([], factory);
    } else if (typeof exports === 'object') {
        // Node, CommonJS-like
        module.exports = factory();
    } else {
        global.appManager = factory();
    }
} (this, function() {
    var body = document.body;
    var ua = window.navigator.userAgent;
    var isAndroid = ua.match(/Android/i) ? true : false;
    var isMobileQQ = /(iPad|iPhone|iPod).*? (IPad)?QQ\/([\d\.]+)/.test(ua) ||
            /\bV1_AND_SQI?_([\d\.]+)(.*? QQ\/([\d\.]+))?/.test(ua);
    var isIOS = ua.match(/iPhone|iPad|iPod/i) ? true : false;
    var isWx = ua.match(/micromessenger/i) ? true : false;
    var isAndroidChrome = (ua.match(/Chrome\/([\d.]+)/) || ua.match(/CriOS\/([\d.]+)/)) && isAndroid && !isMobileQQ;
    if (isIOS) {
        var ver = (window.navigator.appVersion).match(/OS (\d+)_(\d+)_?(\d+)?/);
        ver = parseInt(ver[1], 10);
    }

    var create_open_with_browser_tips = function() {
		var div = document.createElement('div');
        var p = document.createElement('p');
        var img = document.createElement('img');
        var div1 = document.createElement('div');
		div.appendChild(div1);
		div.appendChild(p);
        div1.appendChild(img);

        var message = '';
        if (isIOS) {
            message = '由于微信的限制，无法直接为您添加信任。<br />您可以：<br />1.点击通用->设备管理->点击应用->添加信任<br />或者<br />2.点击右上角的"..."并选择"在Safari"中打开';
        } else {
            message = '由于微信的限制，无法直接为您安装应用<br />您可以点击右上角的"..."并选择在"浏览器"中打开';
        }

		div.style.cssText = "position: fixed; left: 0px; top: 0px; height: 100%; width: 100%; z-index: 1000; background-color: rgba(0, 0, 0, 0.7);";
		div1.style.cssText = "margin:5px;";
		p.style.cssText = "text-align: left; margin: 20px;padding:20px;margin-top:0; color:black;background-color: rgba(255,255,255, 0.9);font-size:14px;line-height:24px;border-radius:10px;";
        p.innerHTML = message;
		img.style.cssText = "width:97px; height:54px; margin-right: 0; margin-left: auto; display: block; clear: both;";
        img.src = 'http://misc.app.res.mqnetswork.com/arrow.png';
        return div;
    };

    var download_app = function(view, config) {
        if (isAndroid) {
            view.download_btn.href = config.android_download_url;

            // 在微信中提示用户到浏览器中下载
            if (isWx) {
                var tips = create_open_with_browser_tips();
                body.appendChild(tips);
            }

			view.download_btn.onclick = function(event) {
                return true;
            };
        } else if (isIOS) {
            view.download_btn.href = config.ios_download_url;

			// view.download_btn.onclick = function(event) {
			//     // // 隐藏下载按钮
			// 	// view.download_btn.style.display = 'None';
            //     //
			// 	// // 显示安装提示
			// 	// view.install_tips.style.display = '';
            //     // view.install_tips.textContent = '正在安装 ......';
            //
			// 	// setTimeout(() => {
			// 	//     // 隐藏安装提示
            //    //      view.install_tips.style.display = 'None';
            //    //
            //    //      // 显示信任按钮
            //    //      view.trust_btn.style.display = '';
            //    //
            //    //      // 微信中提示用户到浏览器中开启信任
            //    //      if (isWx) {
            //    //          var tips = create_open_with_browser_tips();
            //    //          body.appendChild(tips);
            //    //      }
            //    // }, 6000);
			// };

            // view.trust_btn.onclick = function(event) {
            //     window.location.href = config.ios_mobile_provision;
            // };

            // if (ver >= 9) {
            //     view.download_btn.href = config.ios_download_url;
            // } else if (isWx) {
            //     var tip = create_open_with_browser_tips();
            //     body.appendChild(tip);
            // } else {
            //     view.download_btn.href = config.ios_download_url;
            // }
        } else {
            view.download_btn.href = config.android_download_url;
        }
    };

    return {
        init: function(config) {
            var view = {
                download_btn: document.getElementById("download_btn"),
                trust_btn: document.getElementById("trust_btn"),
				install_tips: document.getElementById('install_tips'),
            };
            download_app(view, config);
        }
    };
}));
